home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
IRIX Installation Tools & Overlays 2002 November
/
SGI IRIX Installation Tools & Overlays 2002 November - Disc 4.iso
/
dist
/
motif21_dev.idb
/
usr
/
Motif-2.1
/
include
/
Xm
/
ToggleBGP.h.z
/
ToggleBGP.h
Wrap
C/C++ Source or Header
|
2002-10-15
|
9KB
|
287 lines
/*
* @OSF_COPYRIGHT@
* COPYRIGHT NOTICE
* Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc.
* ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for
* the full copyright text.
*/
/*
* HISTORY
*/
/* $XConsortium: ToggleBGP.h /main/13 1996/03/29 18:56:49 pascale $ */
/* (c) Copyright 1989, DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
/* (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
/********************************************
*
* No new fields need to be defined
* for the Toggle widget class record
*
********************************************/
#ifndef _XmToggleButtonGP_h
#define _XmToggleButtonGP_h
#include <Xm/ToggleBG.h>
#include <Xm/LabelGP.h>
#ifdef __cplusplus
extern "C" {
#endif
/*************************************************************/
/* The ToggleButton Gadget Cache Object's class and instance records*/
/*************************************************************/
typedef struct _XmToggleButtonGCacheObjClassPart
{
int foo;
#ifdef _SGIMOTIF
_SgClassExtension _SG_vendorExtension;
#endif
} XmToggleButtonGCacheObjClassPart;
typedef struct _XmToggleButtonGCacheObjClassRec
{
ObjectClassPart object_class;
XmExtClassPart ext_class;
XmLabelGCacheObjClassPart label_class_cache;
XmToggleButtonGCacheObjClassPart toggle_class_cache;
} XmToggleButtonGCacheObjClassRec;
externalref XmToggleButtonGCacheObjClassRec xmToggleButtonGCacheObjClassRec;
typedef struct _XmToggleButtonGCacheObjPart
{
unsigned char ind_type;
Boolean visible;
Dimension spacing;
Dimension indicator_dim;
Pixmap on_pixmap;
Pixmap insen_pixmap;
unsigned char ind_on;
Boolean fill_on_select;
Pixel select_color;
GC select_GC;
GC background_gc;
#ifdef _SGIMOTIF
XtPointer _SG_vendorExtension;
#endif
GC arm_GC; /* used in menus when enableEtchedInMenu
is set. */
unsigned char toggle_mode;
Boolean reversed_select;
Pixmap indeterminate_pixmap;
Pixmap indeterminate_insensitive_pixmap;
Pixel unselect_color;
GC unselect_GC;
GC indeterminate_GC;
GC indeterminate_box_GC;
Dimension ind_left_delta;
Dimension ind_right_delta;
Dimension ind_top_delta;
Dimension ind_bottom_delta;
} XmToggleButtonGCacheObjPart;
typedef struct _XmToggleButtonGCacheObjRec
{
ObjectPart object;
XmExtPart ext;
XmLabelGCacheObjPart label_cache;
XmToggleButtonGCacheObjPart toggle_cache;
} XmToggleButtonGCacheObjRec;
/****************************************************
*
* Full class record declaration for Toggle class
*
****************************************************/
typedef struct _XmToggleButtonGadgetClassPart
{
XtPointer extension;
#ifdef _SGIMOTIF
_SgClassExtension _SG_vendorExtension;
#endif
} XmToggleButtonGadgetClassPart;
typedef struct _XmToggleButtonGadgetClassRec {
RectObjClassPart rect_class;
XmGadgetClassPart gadget_class;
XmLabelGadgetClassPart label_class;
XmToggleButtonGadgetClassPart toggle_class;
} XmToggleButtonGadgetClassRec;
externalref XmToggleButtonGadgetClassRec xmToggleButtonGadgetClassRec;
#ifdef _SGIMOTIF
typedef struct __SG_XmToggleGadgetExtPart {
SgRenderIndicatorProc indicator_render;
SgRenderShadowsProc indicator_render_shadows;
int indicator_visual_state;
visual_state_array indicator_visual_array;
Pixel indicator_background;
shaderptr indicator_shader;
}_SG_XmToggleGadgetExtPart;
typedef struct __SG_XmToggleGadgetExt {
_SgInstanceExtensionRec common; /* Stuff all instance rec's have */
_SG_XmToggleGadgetExtPart instance; /* Resources & instance var's */
} _SG_XmToggleGadgetExtRec, *_SG_XmToggleGadgetExt;
#define _SG_ToggleGadgetPtr(w) ((_SG_XmToggleGadgetExt)(((XmToggleButtonGadget)(w))->toggle._SG_vendorExtension))
#endif /* _SGIMOTIF */
typedef struct _XmToggleButtonGadgetPart
{
Boolean indicator_set;
unsigned char set;
unsigned char visual_set; /* used for visuals and does not reflect
the true state of the button */
Boolean Armed;
XtCallbackList value_changed_CB,
arm_CB,
disarm_CB;
XmToggleButtonGCacheObjPart *cache; /* Replace cache instance fields */
/* with a pointer */
#ifdef _SGIMOTIF
_SG_XmToggleGadgetExt _SG_vendorExtension;
#endif
#ifdef _SGIMOTIF
/* this member is not used, see the cooresponding member in the ext. rec.
* --- offer dec 97 */
#endif /* _SGIMOTIF */
Dimension detail_shadow_thickness ;
} XmToggleButtonGadgetPart;
/****************************************************************
*
* Full instance record declaration
*
****************************************************************/
typedef struct _XmToggleButtonGadgetRec {
ObjectPart object;
RectObjPart rectangle;
XmGadgetPart gadget;
XmLabelGadgetPart label;
XmToggleButtonGadgetPart toggle;
} XmToggleButtonGadgetRec;
/**********/
/* MACROS */
/**********/
/* Macros for cached instance fields */
#define TBG_IndType(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->ind_type)
#define TBG_Visible(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->visible)
#define TBG_Spacing(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->spacing)
#define TBG_IndicatorDim(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->indicator_dim)
#define TBG_OnPixmap(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->on_pixmap)
#define TBG_InsenPixmap(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->insen_pixmap)
#define TBG_IndOn(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->ind_on)
#define TBG_FillOnSelect(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->fill_on_select)
#define TBG_ReversedSelect(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->reversed_select)
#define TBG_SelectColor(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->select_color)
#define TBG_SelectGC(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->select_GC)
#define TBG_BackgroundGC(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->background_gc)
#define TBG_ArmGC(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->arm_GC)
#define TBG_ToggleMode(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->toggle_mode)
#define TBG_IndeterminatePixmap(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->indeterminate_pixmap)
#define TBG_IndeterminateInsensitivePixmap(w) \
(((XmToggleButtonGadget) (w)) -> \
toggle.cache->indeterminate_insensitive_pixmap)
#define TBG_IndeterminateGC(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->indeterminate_GC)
#define TBG_IndeterminateBoxGC(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->indeterminate_box_GC)
#define TBG_UnselectColor(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->unselect_color)
#define TBG_UnselectGC(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->unselect_GC)
#define TBG_IndLeftDelta(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->ind_left_delta)
#define TBG_IndRightDelta(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->ind_right_delta)
#define TBG_IndTopDelta(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->ind_top_delta)
#define TBG_IndBottomDelta(w) \
(((XmToggleButtonGadget) (w)) -> toggle.cache->ind_bottom_delta)
/***************************************/
/* Macros for uncached instance fields */
#define TBG_IndicatorSet(w) \
(((XmToggleButtonGadget) (w)) -> toggle.indicator_set)
#define TBG_Set(w) \
(((XmToggleButtonGadget) (w)) -> toggle.set)
#define TBG_VisualSet(w) \
(((XmToggleButtonGadget) (w)) -> toggle.visual_set)
#define TBG_ValueChangedCB(w) \
(((XmToggleButtonGadget) (w)) -> toggle.value_changed_CB)
#define TBG_ArmCB(w) \
(((XmToggleButtonGadget) (w)) -> toggle.arm_CB)
#define TBG_DisarmCB(w) \
(((XmToggleButtonGadget) (w)) -> toggle.disarm_CB)
#define TBG_Armed(w) \
(((XmToggleButtonGadget) (w)) -> toggle.Armed)
#define TBG_DetailShadowThickness(w) \
(((XmToggleButtonGadget) (w))->toggle.detail_shadow_thickness)
/******************************/
/* Convenience Macros */
/******************************/
#define TBG_Cache(w) (((XmToggleButtonGadget)(w))->toggle.cache)
#define TBG_ClassCachePart(w) \
(((XmToggleButtonGadgetClass)xmToggleButtonGadgetClass)->gadget_class.cache_part)
#ifdef __cplusplus
} /* Close scope of 'extern "C"' declaration which encloses file. */
#endif
#endif /* _XmToggleButtonGP_h */
/* DON'T ADD ANYTHING AFTER THIS #endif */